# 定义了一个SRC_LIST变量，包含了该目录下的所有源文件
aux_source_directory(./ SRC_LIST)

# 定义了一个CacheSystem_LIST变量，包含了CacheSystem目录下的所有源文件
aux_source_directory(./CacheSystem CacheSystem_LIST)

# 定义了一个Reactor_LIST变量，包含了Reactor目录下的所有源文件
aux_source_directory(./Reactor Reactor_LIST)

# 定义了一个RecommendWords_LIST变量，包含了RecommendWords目录下的所有源文件
aux_source_directory(./RecommendWords RecommendWords_LIST)

# 定义了一个Server_LIST变量，包含了Server目录下的所有源文件
aux_source_directory(./Server Server_LIST)

# 定义了一个Tools_LIST变量，包含了Tools目录下的所有源文件
aux_source_directory(./Tools Tools_LIST)

# 定义了一个WebPageQuery_LIST变量，包含了WebPageQuery目录下的所有源文件
aux_source_directory(./WebPageQuery WebPageQuery_LIST)

# 指定生成可执行文件
add_executable(searchEngineServer ${SRC_LIST} ${CacheSystem_LIST} ${Reactor_LIST} 
                            ${RecommendWords_LIST} ${Server_LIST} ${Tools_LIST} ${WebPageQuery_LIST})

# 配置最终的可执行文件输出的路径
set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin)
                            
# 指定可执行文件链接时需要依赖的库文件
target_link_libraries(searchEngineServer mysqlclient log4cpp pthread hiredis redis++)
